﻿using EnqueteMobile.Repository.Base;
using EnqueteMobile.Repository.Database.RepositoriesInterfaces;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EnqueteMobile.Repository.Database
{
    interface IMobilePollUnitOfWork : IDisposable
    {
        void Commit();

        IMessageSubjectRepository MessageSubjectRepository { get; }

        ICityRepository CityRepository { get; }

        IClientRepository ClientRepository { get; }

        IClientConfigurationRepository ClientConfigurationRepository { get; }

        ICommunicationControlRepository CommunicationControlRepository { get; }

        IAddressRepository AddressRepository { get; }

        ILogAppRepository LogAppRepository { get; }

        ILogBDRepository LogBDRepository { get; }

        IPersonRepository PersonRepository { get; }

        IResourceRepository ResourceRepository { get; }

        IIdDocumentRepository IdDocumentRepository { get; }

        ISystemRepository SystemRepository { get; }

        ITelephoneRepository TelephoneRepository { get; }

        IAppActionTypeRepository AppActionTypeRepository { get; }

        IAddressTypeRepository AddressTypeRepository { get; }

        IObjectTypeRepository ObjectTypeRepository { get; }

        IObjectRightTypeRepository ObjectRightTypeRepository { get; }

        IObjectResourceTypeRepository ObjectResourceTypeRepository { get; }

        IResourceTypeRepository ResourceTypeRepository { get; }

        ITelephoneTypeRepository TelephoneTypeRepository { get; }

        IBallotTitleRepository BallotTitleRepository { get; }

        IFederalUnitRepository FederalUnitRepository { get; }

        IUserRepository UserRepository { get; }
    }
}